{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Interacting with Jarvis via MDF Search\n",
    "This notebook shows some examples for employing [matminer](https://github.com/hackingmaterials/matminer) to  to visualize data in [JARVIS](https://www.ctcms.nist.gov/~knc6/JVASP.html) and to screen that database for interesting materials. Uses the version of JARVIS available in the [Materials Data Facility](http://materialsdatafacility.org).\n",
    "\n",
    "Last tested with matminer v0.4.5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "\n",
    "import itertools\n",
    "\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "from matplotlib import pyplot as plt\n",
    "from matplotlib.colors import LogNorm\n",
    "from matminer.data_retrieval.retrieve_MDF import MDFDataRetrieval"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Get Jarvis Data\n",
    "Connect to the MDF and download all the data from Jarvis, which is also available on [GitHub](https://github.com/usnistgov/jarvis/blob/master/jarvis/db/static/explore_db.py)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Download the Data\n",
    "We first create an instance of Matminer's MDFDataRetrieval, which simplifies performing search queries against the MDF."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "mdf = MDFDataRetrieval(anonymous=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Get the version number of the current Jarvis dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 26559/26559 [00:38<00:00, 690.45it/s]\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 26559 compounds\n"
     ]
    }
   ],
   "source": [
    "query_string = 'mdf.source_name:jarvis AND mdf.resource_type:record'\n",
    "data = mdf.get_data(query_string, unwind_arrays=False)\n",
    "print('Found {} compounds'.format(len(data)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Each record contains a high-level description of the kind of data held in Jarvis, as well as the values for commonly used properties"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>crystal_structure.number_of_atoms</th>\n",
       "      <th>crystal_structure.space_group_number</th>\n",
       "      <th>crystal_structure.volume</th>\n",
       "      <th>dft.converged</th>\n",
       "      <th>dft.cutoff_energy</th>\n",
       "      <th>files</th>\n",
       "      <th>jarvis.band_gap.mbj</th>\n",
       "      <th>jarvis.band_gap.optb88vdw</th>\n",
       "      <th>jarvis.crossreference.materials_project</th>\n",
       "      <th>jarvis.dimensionality</th>\n",
       "      <th>...</th>\n",
       "      <th>material.composition</th>\n",
       "      <th>material.elements</th>\n",
       "      <th>mdf.ingest_date</th>\n",
       "      <th>mdf.mdf_id</th>\n",
       "      <th>mdf.parent_id</th>\n",
       "      <th>mdf.resource_type</th>\n",
       "      <th>mdf.scroll_id</th>\n",
       "      <th>mdf.source_id</th>\n",
       "      <th>mdf.source_name</th>\n",
       "      <th>mdf.version</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>16</td>\n",
       "      <td>193</td>\n",
       "      <td>181.081747</td>\n",
       "      <td>True</td>\n",
       "      <td>1200.0</td>\n",
       "      <td>[{'data_type': 'ASCII text, with very long lin...</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.0068</td>\n",
       "      <td>mp-1111</td>\n",
       "      <td>3d</td>\n",
       "      <td>...</td>\n",
       "      <td>Mn5Si3</td>\n",
       "      <td>[Mn, Si]</td>\n",
       "      <td>2018-11-13T16:44:17.471796Z</td>\n",
       "      <td>5beaffa52ef38879b395505a</td>\n",
       "      <td>5beaff612ef38879b3953c09</td>\n",
       "      <td>record</td>\n",
       "      <td>5201</td>\n",
       "      <td>jarvis_v1</td>\n",
       "      <td>jarvis</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8</td>\n",
       "      <td>166</td>\n",
       "      <td>121.654162</td>\n",
       "      <td>True</td>\n",
       "      <td>850.0</td>\n",
       "      <td>[{'data_type': 'ASCII text, with very long lin...</td>\n",
       "      <td>2.1427</td>\n",
       "      <td>2.0025</td>\n",
       "      <td>mp-12442</td>\n",
       "      <td>3d</td>\n",
       "      <td>...</td>\n",
       "      <td>KAuF6</td>\n",
       "      <td>[Au, F, K]</td>\n",
       "      <td>2018-11-13T16:44:17.471796Z</td>\n",
       "      <td>5beaffa52ef38879b3955061</td>\n",
       "      <td>5beaff612ef38879b3953c09</td>\n",
       "      <td>record</td>\n",
       "      <td>5208</td>\n",
       "      <td>jarvis_v1</td>\n",
       "      <td>jarvis</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>2 rows × 26 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "   crystal_structure.number_of_atoms  crystal_structure.space_group_number  \\\n",
       "0                                 16                                   193   \n",
       "1                                  8                                   166   \n",
       "\n",
       "   crystal_structure.volume  dft.converged  dft.cutoff_energy  \\\n",
       "0                181.081747           True             1200.0   \n",
       "1                121.654162           True              850.0   \n",
       "\n",
       "                                               files  jarvis.band_gap.mbj  \\\n",
       "0  [{'data_type': 'ASCII text, with very long lin...                  NaN   \n",
       "1  [{'data_type': 'ASCII text, with very long lin...               2.1427   \n",
       "\n",
       "   jarvis.band_gap.optb88vdw jarvis.crossreference.materials_project  \\\n",
       "0                     0.0068                                 mp-1111   \n",
       "1                     2.0025                                mp-12442   \n",
       "\n",
       "  jarvis.dimensionality     ...      material.composition  material.elements  \\\n",
       "0                    3d     ...                    Mn5Si3           [Mn, Si]   \n",
       "1                    3d     ...                     KAuF6         [Au, F, K]   \n",
       "\n",
       "               mdf.ingest_date                mdf.mdf_id  \\\n",
       "0  2018-11-13T16:44:17.471796Z  5beaffa52ef38879b395505a   \n",
       "1  2018-11-13T16:44:17.471796Z  5beaffa52ef38879b3955061   \n",
       "\n",
       "              mdf.parent_id  mdf.resource_type mdf.scroll_id mdf.source_id  \\\n",
       "0  5beaff612ef38879b3953c09             record          5201     jarvis_v1   \n",
       "1  5beaff612ef38879b3953c09             record          5208     jarvis_v1   \n",
       "\n",
       "  mdf.source_name mdf.version  \n",
       "0          jarvis           1  \n",
       "1          jarvis           1  \n",
       "\n",
       "[2 rows x 26 columns]"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.head(2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Index(['crystal_structure.number_of_atoms',\n",
       "       'crystal_structure.space_group_number', 'crystal_structure.volume',\n",
       "       'dft.converged', 'dft.cutoff_energy', 'files', 'jarvis.band_gap.mbj',\n",
       "       'jarvis.band_gap.optb88vdw', 'jarvis.crossreference.materials_project',\n",
       "       'jarvis.dimensionality', 'jarvis.elastic_moduli.bulk',\n",
       "       'jarvis.elastic_moduli.shear', 'jarvis.formation_enthalpy', 'jarvis.id',\n",
       "       'jarvis.landing_page', 'jarvis.total_energy', 'material.composition',\n",
       "       'material.elements', 'mdf.ingest_date', 'mdf.mdf_id', 'mdf.parent_id',\n",
       "       'mdf.resource_type', 'mdf.scroll_id', 'mdf.source_id',\n",
       "       'mdf.source_name', 'mdf.version'],\n",
       "      dtype='object')"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.columns"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Make Some Simple Plots\n",
    "Showcase what kind of data is available in JARVIS."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### How many compounds are 2D?\n",
    "Just figure out how many compounds are from the 2D vs the 3D dataset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAANAAAADQCAYAAAB2pO90AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAHVVJREFUeJzt3XmcnFWd7/HPeZ5an6rekk5nT6qT\nFFlJggkpdhfCIgESFLwC7o53EF8i83LUcuY6V33d0XBHZxCvOo4zMlz0AoKCYyoYDcgqNpANskFD\n6Cydtbvprfaq59w/qsKSdJJOqrvOU1Xn/XrVi6b7qZxfJf2t89R5znOOkFKiadqZMVQXoGmVTAdI\n00qgA6RpJdAB0rQS6ABpWgl0gDStBDpAmlYCHSBNK4EOkKaVQAeowgkhpgoh/iSE2CGE2CaE+NIQ\nx4SEEFtV1FftXKoL0EqWA74spdwohKgDNggh/iil3K66sFqgA1ThpJQHgAPFrweEEDuAyUIIP/Bz\nIAE8o7DEqqZP4aqIECIEnAO0AXcDt0kpz1dZU7XTAaoSQogg8GvgdkAAjVLKJ4s/vldZYVVOB6gK\nCCHcFMLzSynlbygESN+nUgY6QBVOCCGA/wB2SCn/GUBK2Qv0CSEuKh52s6r6qp3QN9RVtmJIngZe\nBuzit/8OOMTbgwjrgOullAuUFFnFdIA0rQT6FE7TSqADpGkl0BdSne6bDV5gA5CnMOsgDrxZfBwB\nDgP7gV3A63yz77CiSmuS/gzkUNfOdhvA5wNuJt93vfX103hqiG/27R6turR306dwzmUC5wL+4T5B\nSpkE9oxaRdpxdICcTQpBfNgHF07h9ClFGekAVRFDiJ2qa6g1OkDV5RXVBdQaHaDqogNUZnoY2wFC\n0ZgAmoEJxUdAXPOAd/zO+1tl/84EDHtQTQeozPQwdpmEojEPcDaF+3UWA9OAiVLKCcD44ozq40x9\n4+G1T8998KrhtHFj5u8vec6e3wpsA3Z0rF6RGJnqtRPRPdAoCEVjBrAEiEgp34OUSxBi7lAhKUym\nLl06T+8zA5NvNAN8vvgtGYrGdgJPAn8CnuhYvUJfZB1hOkAjJBSN1QNXyHxuFcK4UhjGGCgGZIRC\ncjLt/Z5cPtn/QTPQePRbAphbfNxSrHE78ASFQK3vWL2id9QLq3I6QCUIRWOtUsrrsHMfwnBFhBAu\nYar5K92fdHeZgaYxpzhsXvFxK5AJRWNrgV8AazpWr0iPdo3VSAfoNIWiMb/MZz8ibftW4fKcK4QQ\nmEN+fCmrPXF3l9FozTqNp3iAVcVHXyga+zXwSwqnevZJn6m9RQdomKZ/9b9myWz6q8LtvUmY7oAw\nVVf0bjszLf3COOPurwH4TPHRGYrGfgL8SJ/inZoO0ClM+/Kv34tt/6Pw+C8wvNbof5g5Qy/LmbkR\n+qMmA/8L+FooGvsp8C8dq1fsH6E/u+roAJ3AlFvvuUi4PXea/volqms5lZyN3G6e5RnhTrEO+Fvg\ntlA0di/wvztWr3h1ZJuofDpAx5jyhf/7HmG67nLVN1+oupbhOpIyB/LWuLGjdFbpAT4LfDoUjf0K\n+HrH6hUdo9NU5dEBKpryhXtmC8P8oRkcs1yM1MWZMtmXcPcZVv3YUW7GAD4KrApFY3cC3+lYvWJg\nlNt0vJqfCzf2yi96Jn/up3eZVuNWM9B0WaWFB2Bv3N1teIPNZWrOB0SBV0LR2EfL1KZj1XSAJtz0\n3eXWWeftco+d8kVhuiq2N+5I+ruF21tf5mYnAveForE/hKKxcJnbdoyaDFDzir8JTvqrn9zvnbJg\nnWk1TlZdT6m25abEFXaclwGbQ9HYf1dVgEo1F6AJN313pX9W5A1P87T/JgyjKl7/ZmarPu20gJ+G\norEHQ9FY4ymPriJV8Qs0HFY44p9w0+p/806Z/xvTX1euzwujLpET2U5va1B1HUXXA1tC0VjFjGCW\nqiYCVH/uqqmNF3/8Wd+0sz8nDLOqXvP+hKvPtBqd9IYwDXgyFI19ozgrvapV/Qscc/nnL61f9qEX\nPC2t56iuZTTsS7h7DX/daA9hny4T+DawNhSN1akuZjRVbYCscMQYt/JrXw0uWL7GVTd2vOp6Rsve\nuLvL8AacFqCjrqDQG01QXchoqcoAWeFIILjoip9bsy/6ruHx+VTXczK5/iMcvO/rdP7sFvb/+630\nv/jbEx77Qmce89v9PLQ9C8ArXXluf+TQvAP33O5Nd+4AQNp5Dt3/99jZVFnqH4ZzgOdC0dgc1YWM\nhqoLkBWONAcXX/lr/8xln6yIUTbDpOn9n2Xy5/6VCR//HgMbY2S6jl8bMW9LvrY+xRUz375c9dMN\nWULzzt42btXX6X/+YQAGNq0lMP8DGG5HvW+EgGercXDB+b9gp8EKRybWLbn2EWvmsisqZUKBKzgG\n74TCbTyG18I9dir5ge7jjvvh8xk+PNdNS+Dt1+UyYLfd4pa5NBgmdmqQ5GvPE1jwgbLVfxrGAOtD\n0diHVBcykqomQFY4Mr1u6cpH/KHFFfsul+s7RObQLryTZr/r+539Ng/vzHHL0nffuHfjQl+i742t\nZ3Wv+xEN53+E3mfvo+H8j4zYOgujwAf8KhSNrVJdyEipigBZ4UiobunKh/zTFy1TXcuZsjNJjjz8\nHcZc+jkMr/Wun92+LsUdy72YxruDYbi9veNv+NahiR//PsLtJT/Yg3vsFLrWfJ8jv72DbE9nOV/C\ncJnA/aFo7FLVhYyEip3/dZQVjrQGF3/wl/7pi5aqruVMyXyOIw9/h8C892HNvuC4n7+4P89HH0oC\n0JWQrG3P4TLAFQz2GHWBSQC9T91L48Ufo3/D7wjMex+uhhZ6n/1/jLvmK+V9McPjBR4JRWOXdqxe\n8bzqYkpR0T2QFY5M9c+K/MQ/Y+n5qms5U1JKuh/9Ae6xU6lfdt2Qx7zxpTo6bi88rp/n5scrfKya\n46Yj7u0SHn9jas/LmMExuMdMRmbThVWAhFH42rmCwKOhaGy+6kJKUbE9kBWONHknzbkjePbySx18\nzn9K6c7txLf9Cfe4EPvv/iIATZd8glz/kcIBJ5lZtiM7KQ7C6PvzAzSvigJQt+hKutZ8D2nnGXP5\nraNdfqnGAH8IRWMXVupNehW5MqkVjvhdTZP+sfGij/214fFZp35G5TrZyqQXb7vuv/bOvOHactc0\nCl4FlnWsXtGnupDTVXGncFY4YhpWwxcazrvhU9UenpNJ58m3u8LV8vrPAu4trhFeUSoqQFY4IkB8\nuOG8G243rYYm1fWodCjp6jesJqdO4TkT1wDfUF3E6aqoAAGXBBdd/lV306SKvwmuVHsT7l7TeZNI\nS/XNUDR2meoiTkfFBMgKR6a5x7Xe7p9x7mLVtTjB3ri72/CVbR2EchEUTuUqZvJpRQTICke8wuW9\ntX7pykuEYThsTVA1dqWCPcLlqZbPQO80HvhFpdxLVBFFAtfVLbnmGtOqP9Xi6TXj5XzIMdOtR8Gl\nFHeUcDrHB8gKR+b5pi38jHfy3Hmqa3GSTcxx/L9dib4TisYmqi7iVBz9j2CFI/WGN/DF4KIrz6/k\ni6UjrS9jpPr8UxpU1zHKGoAfqC7iVBwboMKQNTcHF11xvuHxOWXRDEfoTLh6Dauh2gYQhnJDKBob\n1vaWqjg2QMBcV8OE5d7JcxeoLsRpCusgBKttCPtEfhSKxhw7WOLIAFnhiAv4WN05V50tDFOPuh1j\nT9x9xPBYtTKgEgL+p+oiTsSRAQLO906et9g9dkrNLhl7MjszLQMlbKZVif4mFI1NU13EUBwXICsc\nCQIfDS5cXpXLUI2ELXJmVnUNZeYG/k51EUNxXICAK605Fy8wrcaKuRpdTjkbe4cx21ErhpTJp53Y\nCzkqQFY4Mh4hrrJmLdMDBydwOGUO2sHmWvn8804e4OuqiziWowIEXO2fFZlqeAO1+AsyLJ0Jd5/h\nr6+FIeyhfCYUjU1VXcQ7OSZAVjgyDrjQmhXRMw5OojiJtFaGsI/luF7IMQECPuCdMr/FtBomqS7E\nyd5I+ruEq+ybaTnJZ500W9sRAbLCkTpguXXW+TNV1+J023JTkzU+rckDfEJ1EUc5IkDAMrN+XL2r\nceLsUx9a2zYJ/VcEfFp1AUcpD1Bx1sHVgTkXT6nEDX7LKZ4TmQOe1qreLmSY5oSiseMX0FNAeYCA\neUCjZ1yrfms9hQMJV78ZaKjVAYRjfUZ1AeCMAF3oGT/DMnyO3ePGMfYm3L2Gr3q2pyzRR0LRWEB1\nEUoDZIUjfuA9vtYleuRtGPbG3UccvJlWudUBN6guQnUPNAcwPc3T9bWfYXg1NaZPmC6P6joc5CbV\nBagO0AWeCeGA4a2ZqfkleZnWjOoaHOa9oWhM6c2WygJkhSMWcI6/9ZwpqmqoJLaEl8ScWrqFYTg8\ngNJ15FT2QHMAw9U0eZbCGipGT9qIp6zxuqc+3gqVjasM0HmGL5g3fMEWhTU4npBSAOxLuPtMvx7C\nHsJylY0rCZAVjhjA2d4p8+v1tdOTkzLvAdgbd/fU8CTSk5keisZmqGpcVQ80HvB6xoX08PUpCNv2\nAOxOeLuEx1/TC+qfhLLtIlUFaCqAq36c4+4wdBxpuwF25CbF9VSnE1K2Q6GqAM3DdOUMfevCKUkK\nn4E2y7Ns1bU42NmqGi57gIoLJp7tnTTHX2Mry5wRKaUrnSf/unumX3UtDjZf1WL0KhptAJrcY6fq\nIdlhkFJ6DiZdfUZgjJ4Dd2J+QMm9ZCoCNAWwTatRfyAeBhszvy/h7jN9VbeZ1khTchqnIkBjAdPw\n1+keaBiyuGRhHQQ9ifQUFqpoVEWAJgMZwxvQPdAwZHCJ11J11bqZ1kiqmR5oEpA0PP5GBW1XnIx0\nmVvzobTqOiqAkilhKgI00awbK/S0/OHJ4spuFlW/mdZIUDLIUtZhZCsccQNNrqZJspztVrI4vqzw\nT2zwqi7E+ZR8Riz3O1sjIM1Ak14YY5jymHlDTyIdDm8oGiv775WSABlun35DHS5h5A2/XgdhmMr+\n91TuAPkBhMurAzRMwjCzNbSZVqnGlbvBcgfICwjh8ugADZMZaPILw9C79A1P1fdAXsAQpp4DN1xG\nQM/YOA1V/xmo0PMIve/pcOmb6E5LvtwNljtAbkBiGPq6xjDpzz+nJVfuBlUEyAb0jWHDpD//nJay\n7x1b7gC5AEkuq6emaKOh6nugDGDYubQOkDYaqj5Ag4Ahs+lUmdvVakPVn8KlASmzugfSRkXZf6/K\nHaAUIO1sUgdIGw2Hyt2gmh4ok9SncNpoOFDuBss9IyANYCcHkmVuV6tyUso3d99xdU2cwpF9s7NX\nSqnvCdJG0j4VjaoahcvJbKqvzG1rVUwI8YaKdssdoAEKp3EuOznQVea2tepW/QFKtLdJoBOw8sk+\nHSBtJL2uolEVkzp3A1Z+sEcHSBtJG1U0qipA3lzfYR0gbURIKXMoCpCKG9u6gHy2a0+Pgra1aiTt\nHR13XKvk0oiKHqgLEPnB7oSdjncraF+rNsL4s6qmVQSoh8KsWVeu73CHgva1KiOEeF5V22UPUKK9\nLQfsABqyXXuUDD1qVad2AlS0CQik9m3tUNS+ViWktAeB7araVxWgXQD5ge54PjV4RFENWjWQcl3H\n6hXKtr9UFaD9FGck5PsO6dM47YwJw3xIZftKApRob8sD24DGzJGOXSpq0CqflDILrFVZg8rlpTYB\nVnLXhtdlPpdRWIdWqfLZZzpWr+hXWYLKAL0GILOpXK734CsK69Aqlem+X3UJKgN0mMLE0vr0/h1b\nFdahVSAppS2E+K3qOpQFqDgz+wmgMfH6C6/JXCahqhatAuWzGzpWryj7GgjHUr3E7hZAkM/JTNee\nlxTXolUSw7xTdQmgOECJ9rYu4BWgKbnrxc0qa9Eqh8xl3xSG+aDqOkB9DwSwHqjLHHj1UD7e26m6\nGM35ZC7z847VK8q+iOJQnBCgrRRWlHQn39j4jOpiNGeT0s4bvsD3VddxlPIAJdrbUsAfgfGJV57Z\naacG9Y122gnJTHJdx+oVZV//7USUB6jocQpbnpjJ3S/pXkg7IWF6Vquu4Z0cEaBEe1s38BQwIb7j\niZftTFIveaUdx04ntu7+3qqnVdfxTo4IUNEfABf5HOl925XdYag5l8xlvqK6hmM5JkCJ9rYDFG6M\nahnc+thGO5eJq65Jc458sn/z3h/e/HvVdRzLMQEqehTwyWwqn+rY/CfVxWjOIKVE5jK3qa5jKE4L\n0G4KsxPGD760bmM+0eeY0RZNnXz8zcf3/eiTjvrsc5SjAlScH3c/4EFKc3DrYzG9Bn1tk3Y+J9Px\nv1Zdx4k4KkDw1mehGDApvXdrZ7Z7zybVNWnq5PqP3N35s1teU13HiTguQEVrKSxEHxzYsGa9zGf1\nhlw1KJ/sP5jrO/RF1XWcjHDqKZIVjiwBbgPeqDvnqmX+GUs/qLqm09X/4m8Z3LIOJAQXXUH9uSs5\n8ts7yPYUtrKxU3EMX4BJn/7hcc+1U4N0P3oXma49ADRf9SW8k+fy5hN3k9y1AU9LK81XfxmAwa2P\nY6cGqF+6snwvbpRJO2+n9rx0zaH7/4fSW7ZPRcXSvsO1icJyRdMHNj/6gntc61xX3diQ4pqGLXOk\ng8Et65jwiX9GmG4O/+of8M9cyriVX3vrmJ7H/x3DGxjy+T2P/Ru+GUsYd93fIfNZZDaNnY6T7tzB\npM/8H4787p/IHOnA1TiR+Nb1tNzw7XK9tLLIdu15wOnhAeeewpFob7OBXwI+pHT3t/36N5V00122\nex/eSXMw3D6EYeKduoBE+3Nv/VxKSWLnMwTmXnLcc+10gtTebQQXXg6AMN0YviAgkPnc0WFdhGHS\n//xvqFtyLcJ08nvh6cnHew+kdm/5K9V1DIdjAwSQaG/bR2FUbnKu7+DA4PYnH1Fd03B5mqeT2ruV\nfLIfO5siuetF8v1vz5NN79uGGWjEPWbycc/N9R7EtOrpXnsn++++je5H78LOpDC8FtbsCzjwn7fh\nahiP8AbIHHgVK3xeOV/aqJJ23s4c3vWpnsd+VhFvlpXwtrUemAfMS7Y/1+5paf2Ld8Isx//GuJun\nUh+5nsMPfAPh9uFpaQXDfOvn8e1PDtn7AEg7T+bg64xZfgveSbPpWf9T+v/yII2XfJyGyPU0RK4H\noPvRu2i8+GMMbFlH6o1NuFtCNF7w0bK8vtGSObzrPw898I0/qK5juBzdA8Fbp3J3U9iguL7/Lw+u\nr5QLrHWLLmfip37AhJvvwPDV4W6aBBQCknj1Oaw5QwfIVdeMWdeMd9JsAKzZF5I59O4N2I7+v6tp\nMvGtjzNuVZTskd1keyr3nsRM156X+p697/Oq6zgdjg8QQKK9rQ/4MTBG5rOi/4VHHqqEteTy8V4A\ncv2HC4GZ914AUh2bcY+dgqu+ecjnmcEmXPXNZLsLo3Wp3VtwN0971zG9T/+ChotuBjsHsriyrTCQ\nubLv9D4icgPdhwa3rLsu0d7m+H/Xd6qEUzgAEu1tO61w5BFgVbZrd8fg1sceDC687EYhDMe+CRx5\n5DvYyQEwTMZcdgumLwhAfMdTx52+5Qa66f79XYy/4VsAjFl+C11rvofM53A1TmDsVbe/dWzi1efw\nTAjjqhsLgHfSHPb/xxdwt4TwtMwo06sbOXY6kYjveOqm/hceqbhVah17HWgoVjjiAv4WmAHsDy66\nYok1K3K14rK0Esh8Lh/f/qcvd8Xu/IHqWs6EY9+9h1LcW+jHwJtA8+CWdRvS+1/Rd7BWsOSuDT9P\nvPrc8VeSK0RFBQgg0d7WD/wLhVvAG/qee+CxzJHder5cBUruejE2+NK624oDRRWp4gIEkGhvO0gh\nRPVAoPfpe3+X7T2wU3FZ2mlItLc9MbBp7SeLi8pUrIoMEECive014E5gHNL29j55z0NZvUh9RUi0\ntz05+NK6m4prYVS0ihpEGIoVjiwDvgAcQBjpxks+ca2nedpi1XVpQ0u81vbU4JZ1Nyba2/arrmUk\nVHyAAKxw5DzgFuAIEG+44MbLvRPD5ysuSztG4rXnnxrc8vuqCQ9USYAArHDkbOB2oA/orz931UW+\naQsvVVyWBkjbthOvPPN4fPsTn6ym8EAVBQjACkfOAr5MYdrPm8FFVy7xzzx3hRBCKC6tZslcJj2w\naW0steel2xLtbZU7z+gEqipAAFY4Mg34CoVh7i7/rMis4Pz3f0i4PH7FpdWcfHKgr/+Fh+/LHun4\nh0R7W1Xuxl51AQKwwpEJFGYsNACdrsaJ9Q3nXX+DGWiaori0mpHt2be37y8P/aud7L8r0d42qLqe\n0VKVAQKwwpF64LPAYmAfpivfcN4Nl3knVNHNMw4kpW2nOja/PLAx9k8gf5Vob3PENiSjpWoDBGCF\nIyZwJfARoBvot2ZfNCcw9+JVwnR71VZXffLJgZ6BjWuezRxsvwP4c3GZsqpW1QE6ygpH5lC4VuQB\nDrjHTm2qW7pypSs4Zrri0qqClFKm923fNrBxzR9lLv3DRHvbG6prKpeaCBCAFY40AZ8D5lPYHTwT\nWLB8kTVz6eXC5bHUVle57HS8b2DT2ufSnTvuBR5OtLclVddUTjUTIHjrdojLgA8DOeCgYTX665eu\nvMzdPO0cPdo9fFLadnr/KzsHNq55XGaSP060t+1QXZMKNRWgo6xwZDxwM7CIwuyFQd/0RdMCCy69\n2vQFx6mtzvmyPZ2vDWz5/bZcT+fDwEOJ9raa3UmjJgMEYIUjAjgH+BQQBDoxXTJ49uVLfNMWXGy4\nfXVKC3Sg3GBPZ/zl9VvS+3fuAO4BttbCQMHJ1GyAjrLCkQBwLXAFhRkMh4TbawYXXn6ud8r8Cw2X\nZ+iVD2uInYr3xHc+vTn5+vM7gQeBZ6t9eHq4aj5AR1nhyFRgFbAESAKHhdtnBhd84D3eKfMvMDz+\nBrUVll9usGdPateG9sTrz3dg538HrK/l07Wh6AAdwwpHWoHrgIUUeqTDGCaBue+d75089z1mcEyo\nmgcbpJ3PZbv3bU/sfHpX5vCuXuAJ4HeJ9rYexaU5kg7QCVjhyHTgKmAZkKcw2JB2j53a5J8VWeRp\naV1cTb2SnUn2pffvfDm+/am9drKvH/gj8HSive2w6tqcTAfoFIrz6i4E3g8EKJzedQG2f8bSVt+0\nhee4mibOEYbpVlnnmbCzqYFs974dqY7N+9Od23uBA8AaYFOtXc85UzpAw2SFI25gDvA+CvPrDKAH\nGBAuj+mbtnC6Z/zMGa6miTMNX90Ep57m5ZMDh7I9+15N73n5YHr/zkFAApsp7JLeXskLfKigA3QG\nrHCkgcJgw6XAxOK3UxSW28qadWMDvmmLZrjHTZ/pCo6dJjz+JhWBkvlcJp/o258f6OrM9uw7kO7c\nmcgPdueLP94OPA3sKK50pJ0BHaASFK8ljQFmUrimtJjCfDsB9AODQE54LLenpXWcu2nSeLO+ucW0\nmloMf12L4fYGR6IOmc9l7GyqT6YTfXY63pvrO3wgc+j17szhXRmk7abQy2Qp7Ln0AoWeZmAk2q51\nOkAjqDj7ewoQptBDtVIIlE3hlC8NxIEEYAtvwOMKjg2Ywaag4a8PGh6/T7h9PuHy+ITpdiNtW0rb\nRtp57Hxe2oWvZT6Xs5P9A7mBrr5c78GknewXgBfwUQiLoDDosQN4BdgHHCguTKmNIB2gUVTsoRqB\nluJjBoVQTQZMCsGCwi/80Yfk7RAcXXbs6HHyHf89evybFMJyCNhbfHRW801sTqIDpIAVjhiARWEK\nUZDC6N7RHsSiEJwshQmv+eLDLv43RWHhlD5gINHelj/2z9fKRwdI00pQsSuTOp0QwieEeF4IsUUI\nsU0I8a0hjnmfEGKNivq0kVEx+wNVoDTwASnloBDCDTwjhHhUSvkX1YVpI0cHaJTIwrnx0Q/y7uJD\nCiGupLCmdxewUVF52gjRp3CjSAhhCiE2A4cpzC3bAvwMuAa4GJigsDxtBOgAjSIpZV5KuZjCtaFl\nwFLgDSlle7GH+oXSArWS6QCVgZTy6G0B5/H2tRytCugAjRIhxDghRGPxaz+wHNgJtAohZhYPu1FV\nfdrI0IMIo2cicI8QwqTwRvUrKeUaIUQOiAkhuoBngAUqi9RKoy+kaloJ9CmcppVAB0jTSqADpGkl\n0AHStBLoAGlaCXSANK0EOkCaVgIdIE0rgQ6QppVAB0jTSqADpGkl0AHStBLoAGlaCXSANK0EOkCa\nVgIdIE0rgQ6QppXg/wMxIZMgYThTKAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 216x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "counts = data['jarvis.dimensionality'].value_counts()\n",
    "ax.pie(counts, explode=[0, 0.1], labels=counts.index, autopct='%1.1f%%',\n",
    "        shadow=True, startangle=90)\n",
    "\n",
    "fig.set_size_inches(3, 3)\n",
    "fig.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### How are the spacegroups distributed?\n",
    "How are the entries distributed throughout the 230 spacegroups?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1, 231)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY4AAAEKCAYAAAAFJbKyAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAFzpJREFUeJzt3X+w5XV93/HnSxBMxQqGK0OWbRd1\nTcWmWcgGSbAt+AMQ7ay2kmAyulqadSaQ0eqks2o6kB/MmJkojr9I1rJ1SQ2IEetGqLgias0osCAF\nViRsEWVZhl2CQY0tmcV3/zifWw+79557v7v33HPuPc/HzJ3zPe/z/fE+33vueZ3vj/s9qSokSZqv\np426AUnS0mJwSJI6MTgkSZ0YHJKkTgwOSVInBockqRODQ5LUicEhSerE4JAkdXL4qBsYhmOPPbZW\nrVo16jYkaUm57bbbHq2qqbnGW5bBsWrVKrZv3z7qNiRpSUny3fmM564qSVInBockqRODQ5LUicEh\nSerE4JAkdWJwSJI6MTgkSZ0YHJKkTgwOSVInBockTYhVG69bkPkYHJKkTgwOSVInBockqRODQ5LU\nicEhSerE4JAkdWJwSJI6GVpwJHlGkluS/K8kO5L8fqufmOTmJPcl+WSSI1r9yHZ/Z3t8Vd+83tXq\n9yY5e1g9S5LmNswtjieAl1XVLwJrgHOSnAb8MXBZVa0Gvg9c0Ma/APh+Vb0AuKyNR5KTgPOBFwPn\nAB9NctgQ+5YkDTC04KieH7W7T28/BbwM+MtW3wK8tg2va/dpj788SVr96qp6oqq+A+wETh1W35Kk\nwYZ6jCPJYUnuAPYA24D/DfxdVe1ro+wCVrThFcCDAO3xx4Gf7a/PME3/sjYk2Z5k+969e4fxdCRJ\nDDk4qurJqloDnEBvK+FFM43WbjPLY7PV91/WpqpaW1Vrp6amDrZlSdIcFuWsqqr6O+DLwGnA0UkO\nbw+dAOxuw7uAlQDt8WcDj/XXZ5hGkrTIhnlW1VSSo9vwzwCvAO4BbgJe30ZbD3y2DW9t92mPf6mq\nqtXPb2ddnQisBm4ZVt+SpMEOn3uUg3Y8sKWdAfU04Jqq+lySbwFXJ/kj4JvAFW38K4A/T7KT3pbG\n+QBVtSPJNcC3gH3AhVX15BD7liQNMLTgqKo7gZNnqN/PDGdFVdX/Bc6bZV6XApcudI+SpO78z3FJ\nUicGhySpE4NDktSJwSFJ6sTgkCR1YnBIkjoxOCRJnRgckqRODA5JUicGhySpE4NDktSJwSFJ6sTg\nkCR1YnBIkjoxOCRJnRgckqRODA5JUicGhySpE4NDktSJwSFJ6sTgkCR1YnBIkjoxOCRJnQwtOJKs\nTHJTknuS7Ejytla/JMlDSe5oP+f2TfOuJDuT3Jvk7L76Oa22M8nGYfUsSZrb4UOc9z7gnVV1e5Jn\nAbcl2dYeu6yq/qR/5CQnAecDLwZ+Dvhikhe2hz8CvBLYBdyaZGtVfWuIvUuSZjG04Kiqh4GH2/AP\nk9wDrBgwyTrg6qp6AvhOkp3Aqe2xnVV1P0CSq9u4BockjcCiHONIsgo4Gbi5lS5KcmeSzUmOabUV\nwIN9k+1qtdnqkqQRGHpwJDkK+DTw9qr6AXA58HxgDb0tkvdNjzrD5DWgvv9yNiTZnmT73r17F6R3\nSdKBhhocSZ5OLzQ+UVXXAlTVI1X1ZFX9BPgYP90dtQtY2Tf5CcDuAfWnqKpNVbW2qtZOTU0t/JOR\nJAHDPasqwBXAPVX1/r768X2jvQ64uw1vBc5PcmSSE4HVwC3ArcDqJCcmOYLeAfStw+pbkjTYMM+q\nOh14I3BXkjta7d3AG5Ksobe76QHgrQBVtSPJNfQOeu8DLqyqJwGSXATcABwGbK6qHUPsW5I0wDDP\nqvoaMx+fuH7ANJcCl85Qv37QdJKkxeN/jkuSOjE4JEmdGBySpE4MDklSJwaHJKkTg0OS1InBIUnq\nxOCQJHVicEiSOjE4JEmdGBySpE4MDklSJwaHJKkTg0OS1InBIUnqxOCQJHVicEiSOjE4JEmdGByS\npE4MDklSJwaHJKkTg0OS1InBIUnqxOCQJHUytOBIsjLJTUnuSbIjydta/TlJtiW5r90e0+pJ8sEk\nO5PcmeSUvnmtb+Pfl2T9sHqWJM1tmFsc+4B3VtWLgNOAC5OcBGwEbqyq1cCN7T7Aq4DV7WcDcDn0\ngga4GHgJcCpw8XTYSJIW39CCo6oerqrb2/APgXuAFcA6YEsbbQvw2ja8Driyer4BHJ3keOBsYFtV\nPVZV3we2AecMq29J0mCLcowjySrgZOBm4Liqehh64QI8t422Aniwb7JdrTZbff9lbEiyPcn2vXv3\nLvRTkCQ1Qw+OJEcBnwbeXlU/GDTqDLUaUH9qoWpTVa2tqrVTU1MH16wkaU5DDY4kT6cXGp+oqmtb\n+ZG2C4p2u6fVdwEr+yY/Adg9oC5JGoFhnlUV4Argnqp6f99DW4HpM6PWA5/tq7+pnV11GvB425V1\nA3BWkmPaQfGzWk2SNAKHD3HepwNvBO5KckervRt4L3BNkguA7wHntceuB84FdgI/Bt4CUFWPJflD\n4NY23h9U1WND7FuSNMDQgqOqvsbMxycAXj7D+AVcOMu8NgObF647SdLB8j/HJUmdGBySpE4MDklS\nJ/MKjiSnz6cmSVr+5rvF8aF51iRJy9zAs6qS/Arwq8BUknf0PfSPgcOG2ZgkaTzNdTruEcBRbbxn\n9dV/ALx+WE1JksbXwOCoqq8AX0ny8ar67iL1JEkaY/P9B8Ajk2wCVvVPU1UvG0ZTkqTxNd/g+BTw\np8B/AZ4cXjuSpHE33+DYV1WXD7UTSdKSMN/Tcf8qyW8nOb59Z/hz2le6SpImzHy3OKYvg/67fbUC\nnrew7UiSxt28gqOqThx2I5KkpWFewZHkTTPVq+rKhW1HkjTu5rur6pf7hp9B7/s0bgcMDkmaMPPd\nVfU7/feTPBv486F0JEk6JKs2XscD73310OZ/sJdV/zGweiEbkSQtDfM9xvFX9M6igt7FDV8EXDOs\npiRJ42u+xzj+pG94H/Ddqto1hH4kSWNuXruq2sUOv03vCrnHAP8wzKYkSeNrvt8A+GvALcB5wK8B\nNyfxsuqSNIHmu6vqPcAvV9UegCRTwBeBvxxWY5Kk8TTfs6qeNh0azd/ONW2SzUn2JLm7r3ZJkoeS\n3NF+zu177F1Jdia5N8nZffVzWm1nko3z7FeSNCTz3eL4fJIbgKva/V8Hrp9jmo8DH+bAfxK8rKr6\nD7aT5CTgfODFwM8BX0zywvbwR4BXAruAW5NsrapvzbNvSdICm+s7x18AHFdVv5vk3wIvBQJ8HfjE\noGmr6qtJVs2zj3XA1VX1BPCdJDuBU9tjO6vq/tbP1W1cg0OSRmSuXVUfAH4IUFXXVtU7quo/0tva\n+MBBLvOiJHe2XVnHtNoK4MG+cXa12mx1SdKIzBUcq6rqzv2LVbWd3tfIdnU58HxgDfAw8L5Wzwzj\n1oD6AZJsSLI9yfa9e/ceRGuSpPmYKzieMeCxn+m6sKp6pKqerKqfAB/jp7ujdgEr+0Y9Adg9oD7T\nvDdV1dqqWjs1NdW1NUnSPM0VHLcm+a39i0kuAG7rurAkx/fdfR0wfcbVVuD8JEcmOZHedbBuAW4F\nVic5MckR9A6gb+26XEnSwpnrrKq3A59J8pv8NCjWAkfQe+OfVZKrgDOAY5PsAi4Gzkiyht7upgeA\ntwJU1Y4k19A76L0PuLCqnmzzuQi4gd41sjZX1Y6Oz1GStIAGBkdVPQL8apIzgX/eytdV1ZfmmnFV\nvWGG8hUDxr8UuHSG+vXMfeqvJGmRzPf7OG4CbhpyL5KkJeBgv49DkjShDA5JUicGhySpE4NDktSJ\nwSFJ6sTgkCR1YnBIkjoxOCRJnRgckqRODA5JUicGhzSBVm28jlUbrxt1G1qiDA5JUicGhyR1NOlb\nbAaHJKkTg0OS1InBIUnqxOCQJHVicEiSOjE4JEmdGBySpE4MDklSJwaHJKkTg0OS1MnQgiPJ5iR7\nktzdV3tOkm1J7mu3x7R6knwwyc4kdyY5pW+a9W38+5KsH1a/kqT5GeYWx8eBc/arbQRurKrVwI3t\nPsCrgNXtZwNwOfSCBrgYeAlwKnDxdNhIkkZjaMFRVV8FHtuvvA7Y0oa3AK/tq19ZPd8Ajk5yPHA2\nsK2qHquq7wPbODCMFtykX8BMkgZZ7GMcx1XVwwDt9rmtvgJ4sG+8Xa02W12SNCLjcnA8M9RqQP3A\nGSQbkmxPsn3v3r0L2pwO5FaZNLkWOzgeabugaLd7Wn0XsLJvvBOA3QPqB6iqTVW1tqrWTk1NLXjj\nkqSexQ6OrcD0mVHrgc/21d/Uzq46DXi87cq6ATgryTHtoPhZrSZJGpHDhzXjJFcBZwDHJtlF7+yo\n9wLXJLkA+B5wXhv9euBcYCfwY+AtAFX1WJI/BG5t4/1BVe1/wF2StIiGFhxV9YZZHnr5DOMWcOEs\n89kMbF7A1iRJh2BcDo5LkpYIg0PS2PGMvfFmcEiSOjE4JEmdGBySpE4MDklSJwaHJKkTg0OS1InB\nIUlLzKgvMmpwSJI6MTgkSZ0YHJKkTgwOHRIvDSFNHoNDktSJwSFJ6sTgmMOoT3uTJoV/Z0uHwSFJ\nE+ZQPxAbHJKkTgwOSVInyzo43GcqSQtvWQfHQjKEJKnH4JAkdWJwSEuYW8IaBYNDktTJSIIjyQNJ\n7kpyR5LtrfacJNuS3Nduj2n1JPlgkp1J7kxyyih6liT1jHKL48yqWlNVa9v9jcCNVbUauLHdB3gV\nsLr9bAAuX/ROJUn/3zjtqloHbGnDW4DX9tWvrJ5vAEcnOX4UDUqSRhccBXwhyW1JNrTacVX1MEC7\nfW6rrwAe7Jt2V6s9RZINSbYn2b53794hti5Jk+3wES339KraneS5wLYk3x4wbmao1QGFqk3AJoC1\na9ce8LgkaWGMZIujqna32z3AZ4BTgUemd0G12z1t9F3Ayr7JTwB2L163kqR+ix4cSZ6Z5FnTw8BZ\nwN3AVmB9G2098Nk2vBV4Uzu76jTg8eldWpLGl19JsHyNYlfVccBnkkwv/y+q6vNJbgWuSXIB8D3g\nvDb+9cC5wE7gx8BbFr9lSdK0RQ+Oqrof+MUZ6n8LvHyGegEXLkJrkqR5GKfTcceCm9YaF74WNa4M\nDknz4jELTVuWwXHXQ4/7Ape0YHw/eaplGRySpOExOCRJnRgckqRODA5JwuMYXRgckjQDzyKbncEh\nSepk4oPDTxSS1M3EB4ckqRuDQyPlFp/Gicc15sfgkLSofGNe+kb1DYCSxkD/m/gD7331CDs50HRv\n49aXJmyLw81QSTp0ExUcOngLEbgG9+i43rWQDA5JUicGxxgY9El8KX1KXyp9LgWD1qXrWaM2McHh\nH5skLYyJCY5BltKn+mE7mHXh+tPBWoqvm6XY8yAH8/fr6bgaaJz+SDw9UxoPBkef/d8kx+lNE5b2\nG+dirculvI5g/F5zS82of//jsvxhm8hdVdObZpP8RzrK5z+s5Y7773PSX3PqWezXwDCWt2SCI8k5\nSe5NsjPJxlH3M22+v5SFHm9Y0881b9/4Ft5SWK8L3d9CPedxX2+zWerPf0nsqkpyGPAR4JXALuDW\nJFur6luj7axn0ObpYv5iZ1rWoWw6DzpFeLnqur5Wbbxu4Lij3nXR72B7mev3fajPcaE+LI3DOl4M\n4/D3t1S2OE4FdlbV/VX1D8DVwLr5TLgUPs0djIX8xLKU19FibcmNyzLGYfnzec2Mel3sr7+fmY5l\nLrfdtjMtZyGXtSS2OIAVwIN993cBLxlRL8DgT/fTDvaT6FyfoAb9EczV4yCj3nTe/9P7oE/zh7oO\nZqofzO9i0HL3fy4HYz79zzQ8aNmD5nmon9pn+7t44L2vntc6GPau1oMZ92B66p9m+rkPa4vsYLaS\nD1Wq6pBnMmxJzgPOrqr/0O6/ETi1qn6nb5wNwIZ29+eBexe90aXjWODRUTcx5lxHg7l+5rYU19E/\nraqpuUZaKlscu4CVffdPAHb3j1BVm4BNi9nUUpVke1WtHXUf48x1NJjrZ27LeR0tlWMctwKrk5yY\n5AjgfGDriHuSpIm0JLY4qmpfkouAG4DDgM1VtWPEbUnSRFoSwQFQVdcD14+6j2XCXXpzcx0N5vqZ\n27JdR0vi4LgkaXwslWMckqQxYXAsc0keSHJXkjuSbG+15yTZluS+dnvMqPtcTEk2J9mT5O6+2ozr\nJD0fbJe6uTPJKaPrfPHMso4uSfJQey3dkeTcvsfe1dbRvUnOHk3XiyfJyiQ3JbknyY4kb2v1iXgd\nGRyT4cyqWtN3auBG4MaqWg3c2O5Pko8D5+xXm22dvApY3X42AJcvUo+j9nEOXEcAl7XX0pp23JEk\nJ9E70/HFbZqPtssELWf7gHdW1YuA04AL23qYiNeRwTGZ1gFb2vAW4LUj7GXRVdVXgcf2K8+2TtYB\nV1bPN4Cjkxy/OJ2OzizraDbrgKur6omq+g6wk95lgpatqnq4qm5vwz8E7qF3hYuJeB0ZHMtfAV9I\nclv773qA46rqYej9AQDPHVl342O2dTLT5W5WLHJv4+Sitqtlc98uzoleR0lWAScDNzMhryODY/k7\nvapOobepfGGSfzXqhpaYzFCb1FMRLweeD6wBHgbe1+oTu46SHAV8Gnh7Vf1g0Kgz1JbsOjI4lrmq\n2t1u9wCfobcL4ZHpzeR2u2d0HY6N2dbJnJe7mRRV9UhVPVlVPwE+xk93R03kOkrydHqh8YmquraV\nJ+J1ZHAsY0memeRZ08PAWcDd9C7Xsr6Nth747Gg6HCuzrZOtwJvaWTGnAY9P74qYNPvtk38dvdcS\n9NbR+UmOTHIivQPAtyx2f4spSYArgHuq6v19D03E68h/AFzGkjyP3lYG9K4S8BdVdWmSnwWuAf4J\n8D3gvKqa74HQJS/JVcAZ9K5e+ghwMfDfmWGdtDeID9M7W+jHwFuqavso+l5Ms6yjM+jtpirgAeCt\n029+Sd4D/Ht6Zxu9var+x6I3vYiSvBT4n8BdwE9a+d30jnMs+9eRwSFJ6sRdVZKkTgwOSVInBock\nqRODQ5LUicEhSerE4NDES/KedoXTO9tVX18y6p6kcbZkvgFQGoYkvwK8Bjilqp5IcixwxIjbAiDJ\n4VW1b9R9SPtzi0OT7njg0ap6AqCqHq2q3e17TP44yS3t5wUASf5NkpuTfDPJF5Mc1+pHJfmv7btP\n7kzy71r9rCRfT3J7kk+1axuR5Nwk307ytfY9DZ9r9UuSbEryBeDKJM/om+83k5zZxntzkg9PP4kk\nn0tyRhv+UZL3tWXemGRq0damJoLBoUn3BWBlkr9J8tEk/7rvsR9U1an0/uP3A632NeC0qjoZuBr4\nT63+n+ldRuIXqupfAF9qWy+/B7yiXWhyO/COJM8A/gx4VVW9FNj/jf2XgHVV9RvAhQBV9QvAG4At\nbfpBngnc3pb5FXr/9S0tGHdVaaJV1Y+S/BLwL4EzgU8mmf7ynav6bi9rwye0cY6nt0vrO63+Cnpf\nZjQ93+8neQ1wEvDXvStOcATwdeCfAfe3766Ynv/0Je8BtlbV/2nDLwU+1Ob57STfBV44x9P6CfDJ\nNvzfgGsHjCt1ZnBo4lXVk8CXgS8nuYufXqSu/3o808MfAt5fVVvbrqFLWj0ceJnsANuq6g1PKSYn\nz9HS3+83j5ns46l7DAZthXhdIS0od1VpoiX5+SSr+0prgO+24V/vu/16G3428FAbXt833ReAi/rm\newzwDeD0vuMj/yjJC4FvA89rXwDUv5yZfBX4zTb9C+ldPO9eehcZXJPkaUlW8tRv3Hsa8Po2/Bv0\ndq9JC8YtDk26o4APJTma3qf4nfR2G70GODLJzfTeiKe3Gi4BPpXkIXrBcGKr/xHwkSR3A08Cv19V\n1yZ5M3BVkiPbeL9XVX+T5LeBzyd5lMGXIP8o8KdtS2gf8OZ29tdf09tNdhe9y5vf3jfN3wMvTnIb\n8DiDg0nqzKvjSjNI8gCwtqoeHdL8j2rHVwJ8BLivqi6ba7p5zvtHVXXUQsxLmom7qqTR+K0kdwA7\n6O3++rMR9yPNm1sckqRO3OKQJHVicEiSOjE4JEmdGBySpE4MDklSJwaHJKmT/wd26j//82/idAAA\nAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "ax.hist(data['crystal_structure.space_group_number'], bins=range(1, 231));\n",
    "\n",
    "ax.set_xlabel('Spacegroup')\n",
    "ax.set_ylabel('Count')\n",
    "\n",
    "ax.set_xlim(1, 231)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Effect of Functionals on Predicted Properties\n",
    "Jarvis uses two different eXchange-Correlation (XC) functionals for computing band gap energies with DFT: optB88-vdw, and MBJ. These plots show how well they compare"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nSUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 216x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "# Plot the two values\n",
    "ax.scatter(data['jarvis.band_gap.optb88vdw'], \n",
    "           data['jarvis.band_gap.mbj'], alpha=0.3, s=5)\n",
    "\n",
    "# Plot the equality line\n",
    "ax.set_xlim(min(ax.get_xlim()[0], ax.get_ylim()[0]), max(ax.get_xlim()[1], ax.get_ylim()[1]))\n",
    "ax.set_ylim(ax.get_xlim())\n",
    "\n",
    "ax.plot(ax.get_xlim(), ax.get_ylim(), 'k--')\n",
    "\n",
    "ax.set_xlabel('$E_g$, optB88-vdw (eV)')\n",
    "ax.set_ylabel('$E_g$, MBJ (eV)')\n",
    "\n",
    "fig.set_size_inches(3, 3)\n",
    "fig.tight_layout()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### How related are different elastic moduli?\n",
    "Are shear and bulk moduli generally correlated?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0,0.5,'Shear Modulus (GPa)')"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "subset = data[data['jarvis.dimensionality'] == \"3d\"]\n",
    "\n",
    "ax.scatter(subset['jarvis.elastic_moduli.bulk'],\n",
    "                  subset['jarvis.elastic_moduli.shear'])\n",
    "\n",
    "ax.set_xlabel('Bulk Modulus (GPa)')\n",
    "ax.set_ylabel('Shear Modulus (GPa)')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Same plot, minus the compounds with negative moduli"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0,0.5,'Shear Modulus (GPa)')"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n+X/m4sQJMAMYVAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "\n",
    "subset = subset[np.logical_and(subset['jarvis.elastic_moduli.bulk'] > 0,\n",
    "                subset['jarvis.elastic_moduli.shear'] > 0)]\n",
    "\n",
    "ax.scatter(subset['jarvis.elastic_moduli.bulk'], subset['jarvis.elastic_moduli.shear'],\n",
    "          alpha=0.7)\n",
    "\n",
    "ax.set_xlabel('Bulk Modulus (GPa)')\n",
    "ax.set_ylabel('Shear Modulus (GPa)')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "## Some Example Screening\n",
    "Just do demonstrate some screening that you can do with the [Forge client](https://github.com/materials-data-facility/forge), which can access via the MDFDataRetrieval object to get access to the raw data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "screened_results = mdf.forge.aggregate('mdf.source_name:jarvis AND jarvis.band_gap.mbj:[1.1 TO 1.6] '\n",
    "                                       'AND jarvis.dimensionality:2d')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Each record is a dictionary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'crystal_structure': {'number_of_atoms': 8,\n",
       "  'space_group_number': 11,\n",
       "  'volume': 747.0360494448431},\n",
       " 'dft': {'converged': True, 'cutoff_energy': 500.0},\n",
       " 'files': [{'data_type': 'ASCII text, with very long lines, with no line terminators',\n",
       "   'filename': 'JVASP-27859.json',\n",
       "   'globus': 'globus://e38ee745-6d04-11e5-ba46-22000b92c6ec/MDF/mdf_connect/prod/data/jarvis_v1/jdft_2d-7-7-2018.json/JVASP-27859.json',\n",
       "   'length': 6117,\n",
       "   'mime_type': 'text/plain',\n",
       "   'sha512': '6d3a61ae784a9374794fda998a9cd485c8b6dfd690508b44f93e7cf1ff5f208d799e958af6e01a07d9058668bc2a01c1bc6a1664acce9b5f385f36d6883d1810',\n",
       "   'url': 'https://e38ee745-6d04-11e5-ba46-22000b92c6ec.e.globus.org/MDF/mdf_connect/prod/data/jarvis_v1/jdft_2d-7-7-2018.json/JVASP-27859.json'}],\n",
       " 'jarvis': {'band_gap': {'mbj': 1.4936, 'optb88vdw': 0.6651},\n",
       "  'crossreference': {'materials_project': 'mp-1025522'},\n",
       "  'dimensionality': '2d',\n",
       "  'formation_enthalpy': -0.923,\n",
       "  'id': 'JVASP-27859',\n",
       "  'landing_page': 'https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-27859.html',\n",
       "  'total_energy': -23.657202},\n",
       " 'material': {'composition': 'ThTe3', 'elements': ['Te', 'Th']},\n",
       " 'mdf': {'ingest_date': '2018-11-13T16:44:17.471796Z',\n",
       "  'mdf_id': '5beb00b62ef38879b395a23d',\n",
       "  'parent_id': '5beaff612ef38879b3953c09',\n",
       "  'resource_type': 'record',\n",
       "  'scroll_id': 26164,\n",
       "  'source_id': 'jarvis_v1',\n",
       "  'source_name': 'jarvis',\n",
       "  'version': 1}}"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "screened_results[0]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Print out some materials with band gap energies in the range desired for solar cells"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found 8 materials with band gaps between 1.1 and 1.6 eV:\n",
      "Composition: ThTe3 - Gap: 1.49 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-27859.html\n",
      "Composition: GaGeTe - Gap: 1.42 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-60595.html\n",
      "Composition: Bi2Te4Pb - Gap: 1.27 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-28130.html\n",
      "Composition: CuBi(PSe3)2 - Gap: 1.24 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-60464.html\n",
      "Composition: PdI2 - Gap: 1.26 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-60293.html\n",
      "Composition: Nb(SeBr)2 - Gap: 1.22 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-14420.html\n",
      "Composition: Nb(SeBr)2 - Gap: 1.20 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-60390.html\n",
      "Composition: Bi2PbSe4 - Gap: 1.14 eV - URL: https://www.ctcms.nist.gov/~knc6/jsmol/JVASP-28127.html\n"
     ]
    }
   ],
   "source": [
    "print('Found {} materials with band gaps between 1.1 and 1.6 eV:'.format(len(screened_results)))\n",
    "for result in screened_results:\n",
    "    print('Composition: %s - Gap: %.2f eV - URL: %s'%(result['material']['composition'],\n",
    "                                                      result['jarvis']['band_gap'].get('mbj', np.nan),\n",
    "                                                      result['jarvis']['landing_page']))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
